#include <linux/module.h>
#include<linux/time.h>
MODULE_LICENSE("GPL");


#define TIMESPEC_TO_NS

int __init timespec_test_init(void)
{

	struct timespec ts={
		.tv_sec=1,
		.tv_nsec=1
	};      //定义变量用作函数参数

	struct timespec ots;
	const s64 nsec = 1001000000;
	s64 ns;

#ifdef TIMESPEC_TO_NS

	ns=timespec_to_ns(&ts);     //调用函数将timespec类型的变量表示的时间转换成纳秒
	printk("the tv_sec of the timespec is:%ld\n", ts.tv_sec);    //显示变量的秒数
	printk("the tv_nsec of the timespec is:%ld\n", ts.tv_nsec); //显示变量的纳秒数
	printk("the result of the timespec_test is:%lld\n", ns);    //显示转换结果纳秒

	ots = ns_to_timespec(nsec);
	printk("the otv_sec of the timespec is:%ld\n", ots.tv_sec);    //显示变量的秒数
	printk("the otv_nsec of the timespec is:%ld\n", ots.tv_nsec); //显示变量的纳秒数

#endif


	


	return 0;
}

void __exit timespec_test_exit(void)
{
	printk("Goodbye timespec_test.\n");
}

module_init(timespec_test_init);
module_exit(timespec_test_exit);
